Skip to content

Conversation

oliverdr
Copy link
Member

@oliverdr oliverdr commented Sep 14, 2026

Endring

Værforespørsler viser nå tydelige tilstander for lasting, feil, tomt resultat og offline, med manuell retry og sikker håndtering av manglende eller ugyldige data.

Lukker #13

Akseptansekriterier

  • Lastemelding vises mens API-kallet kjører.
  • En forståelig feilmelding vises ved feil.
  • Brukeren kan prøve API-kallet på nytt.
  • Tomt resultat gir en forståelig melding.
  • Feilmeldingen er semantisk tilgjengelig.
  • Appen krasjer ikke dersom data mangler.

Delte komponenter

  • La til gjenbrukbare LoadingMessage, ErrorMessage, EmptyMessage og OfflineMessage-komponenter med konfigurerbar tekst og handlinger.
  • La til en typet QueryFeedback-adapter for TanStack Query, med støtte for egendefinerte regler for tomme resultater og retry-etiketter.
  • Migrerte WeatherExample til de delte komponentene.
  • Scoped CSS hindrer at stilene påvirker andre knapper og varsler.
  • Meldinger bruker role="status" eller role="alert"; handlinger bruker native knapper som er tilgjengelige via tastatur.
  • Zod avviser ufullstendige observasjoner; vellykkede responser uten værdata viser en tomtilstand.
  • Bruker den eksisterende React-, TypeScript-, TanStack Query- og plain CSS-stacken uten nye runtime-avhengigheter.

Eksempler på bruk og videre utvidelse er dokumentert i docs/ui-feedback.md.

Verifisering

  • npm run check: bestod formatering, lint, genererte kontrakter, strict TypeScript, migrasjonsmetadata, alle 27 tester og begge builds.
  • npm run test:e2e: 25 bestått på tvers av Chromium, Firefox, WebKit og emulert iPhone i stående og liggende modus.
  • Testene dekker overganger mellom lasting/retry, tomme og ugyldige responser, offline-gjenoppretting, tastaturhandlinger, uavhengige komponenter, egendefinerte regler for tomme lister og deaktiverte queries.
  • Axe fant ingen brudd på tilgjengelighetskrav i de testede tilstandene for lasting, feil, tomt resultat og suksess.

Verifisert med Node 24.21.0 og npm 11.11.1. API-responser ble mocket; mobilkontroller ble utført med emulering.

Krav fra kurset og bruk av KI

Frontend-løsningen fortsetter å bruke live REST-kall og Zod-validering. Værdata blir ikke persistert.

Review

Review fra en lagkamerat er påkrevd før merging til dev; godkjenning er fortsatt utestående.

@oliverdr oliverdr requested a review from a team as a code owner September 14, 2026 07:40
@oliverdr oliverdr linked an issue Sep 14, 2026 that may be closed by this pull request
6 tasks
@oliverdr oliverdr merged commit 445c718 into dev Sep 15, 2026
@oliverdr oliverdr deleted the 13-issue-12-lage-loading--error--og-empty-state branch September 15, 2026 08:46
Sign in to join this conversation on GitHub.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Issue 12: Lage loading-, error- og empty-state
2 participants